#include <bits/stdc++.h>

using namespace std;
int n,c[100],s;
int a[100][100];
bool hasvis[111];
void check(){
//    for(int i=1;i<=n;i++){
//        a[n][i]=c[n-i+1];
//    }
//    for(int i=n;i>=2;i--){
//        for(int j=1;j<=i-1;j++){
//            a[i-1][j] = a[i][j]+a[i][j+1];
//        }
//    }
    int sum=0;
    for(int i=2;i<=n-1;i++){
        sum+=c[i];
    }
    sum=sum*(n-1)+c[1]+c[n];
    if(sum==s){
        for(int i=n;i>=1;i--){
            cout<<c[i]<<" ";
        }
        exit(0);
    }
}
void dfs(int f){
    if(f==0){
        check();
        return;
    }
    for(int i=1;i<=n;i++){
        if(!hasvis[i]){
            hasvis[i]=1;
            c[f]=i;
            dfs(f-1);
            c[f]=0;
            hasvis[i]=0;
        }
    }
}
int main()
{
    cin>>n>>s;
    dfs(n);
    return 0;
}
